iT邦幫忙

2023 iThome 鐵人賽

DAY 4
0
AI & Data

擁抱AI - 瞭解AI的各項技術範疇及應用領域系列 第 13

[Day 13] 長短期記憶(Long Short Term Memory, LSTM)

  • 分享至 

  • xImage
  •  

今天我們來介紹的是LSTM。

LSTM(Long Short-Term Memory)是一種深度學習模型,屬於我們前幾天介紹的模型-循環神經網絡(RNN)的變種。它主要被設計來解決傳統RNN模型中遇到的梯度消失(gradient vanishing)和梯度爆炸(gradient exploding)的問題,使得它能夠更好地處理長期相依性(long-term dependencies)的資料。

梯度消失舉例: 當今天有個語音訊息與其他語音訊息間隔太長,即會發生梯度消失問題。
梯度爆炸舉例: 當今天要處理一份很長很長非常長的文本時,就會發生梯度爆炸的問題。

在LSTM中,它包含了三個主要關鍵技術,分別是遺忘閘(forget gate)、輸入閘(input gate)和輸出閘output gate)。這些閘的作用是控制資訊的流動,允許模型選擇性地遺忘或記住之前的資訊,這樣就能夠有效地捕捉長期相依性,現在我們來逐一介紹他們。

遺忘閘(forget gate)

遺忘閘用來決定在記憶單元中哪些信息應該被遺忘,哪些信息應該被保留
具體來說,遺忘閘會計算一個在0和1之間的值,用來表示每個記憶單元中相應位置的信息應該被保留(1表示保留)還是遺忘(0表示遺忘)。這個值是由輸入數據和前一個時間步的輸出,以及上一個時間步的記憶單元的值經過一個Sigmoid函數計算得到的。

輸入閘(Input gate)

輸入閘主要負責決定哪些新信息應該被添加到記憶單元中。它的輸入也是前一個時間步的輸出和當前時間步的輸入,並生成一個介於0和1之間的數值,表示哪些信息應該被更新。

輸出閘(Output gate)

輸出閘控制記憶單元中的信息如何影響LSTM的輸出。它的輸入是前一個時間步的輸出和當前時間步的輸入,並根據這些信息生成一個介於0和1之間的數值,以決定記憶單元的輸出。

以上三種閘通過一系列的數學操作(如Sigmoid函數)來計算其輸出,以確保對記憶單元的訊息進行調控。這種結構使LSTM能夠有效地捕捉和適應不同時間步之間的信息,並應對長序列的長期依賴性,同時也不會有梯度消失和梯度爆炸的問題。


上一篇
[Day 12] 可解釋AI(Explainable AI, XAI)
下一篇
[Day 14] 推薦系統(Recommender System)
系列文
擁抱AI - 瞭解AI的各項技術範疇及應用領域14
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言